Globally interconnected communications networks permit displaced individuals to rapidly share audio, video, documents and images. With the increasing utilization of digital video recorders and video-on-demand services, people are less likely to watch media synchronously, thereby reducing the social aspects of media viewing that were common when programming was only aired and viewed at one time. The ability to time-shift the viewing of a media stream thus presents new challenges for friends, coworkers and/or family members to discuss aspects of media that is viewed asynchronously.
Advances in computer and networking technologies have only exacerbated this problem as high-quality streaming and downloaded media playback may be performed on essentially any Network Access Device (NAD), including laptop and desktop computers, Personal Digital Assistants (PDAs) and cellular phones.
It is well-known in the art to provide synchronized media presentations to a user over a communications network. Such media refers to a plurality of media objects that share a common timeline. Audio and video are examples of such media objects, where each component is an independent data stream that is played back in a synchronized fashion on a NAD. Current media codecs such as MPEG2, MPEG4, DV, QuickTime, H.264, 3GPP, 3GPP2 and native OS X encoding of Windows are widely deployed and have facilitated the explosion in multimedia availability in the digital age.
The term “streaming media” refers to media data that is provided over a communications network on a requested basis as opposed to media that is broadcast such as a live television event or downloaded in its entirety prior to playback. In this regard, a client executing on a network access device is able to render the streaming data as it is received from the network from a server, rather than waiting for the entire download of a media file to be completed.
In order to provide for collaborative discussion of digital media, systems and methodologies have been developed for enabling users to add temporal annotations to the content that correspond to various points in a media stream. Such temporal annotations may include textual or visual comments, gestures (i.e. thumbs up/thumbs down, smiley face, sad face and the like), audio or video clips, web links and the like. In this connection, U.S. Pat. Nos. 6,917,965 and 6,956,593, assigned to Microsoft® Corporation, disclose a client/server system and interface for creating, viewing and temporally positioning annotations for media content.
A social network service is a particular type of collaborative computing environment which focuses on building online communities of people who share interests and activities, or who are interested in exploring the interests and activities of others. Most social network services are web based and provide a variety of ways for users to interact, such as e-mail and instant messaging services and others. Examples of popular North American social networking services are MySpace™ and Facebook®.
Users of a social networking service can chose to interact synchronously, that is to communicate or chat one-on-one or in a specific user group utilizing Instant Messaging (IM), a traditional telephone call, a cellular phone call, email, Short Message Service (SMS), Multimedia Messaging Service (MMS) or other messaging standard(s), share favorite links or other acquaintances (“Friends”) in real or near-real time, or interact asynchronously, that is, not in real-time.
It would therefore be advantageous to provide a system and methodology that provides a “social” collaborative experience for asynchronous media review between members of a group. The group can be registered in a networked environment, and as members thereof create annotations corresponding to media content, other members of the group are automatically notified of the commentary and presented with a plurality of options, such as viewing the annotations, adding additional annotations, responding directly to the previously created annotations, and the like. In this manner, group members who create annotations are always automatically notified of annotations that are subsequently added by the other group members.